Added Genre Filter to Book Review Platform#476
Merged
ianshulx merged 1 commit intoianshulx:main-616from Apr 24, 2026
Merged
Conversation
ianshulx
approved these changes
Apr 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This PR introduces a Genre Filter system to the Book Review Platform. Previously, users could only browse a set of featured books or use the search bar. With this update, users can now explore books by specific categories directly from the sidebar.
Changes Made
Routing: Added a new dynamic route /category/:genre in Router.js to allow for category-specific pages.
MainContent Logic: Updated MainContent.js to detect the genre from the URL and fetch relevant books using the getBooksBySubject service from the Google Books API.
Sidebar UI:
Added a new "Genres" section to the sidebar.
Included popular categories: Fiction, Science, Fantasy, Mystery, History, Business, and Cooking.
Implemented active state styling to highlight the currently selected genre.
Styling: Added custom CSS for the sidebar section labels and genre links in Sidebar.css.
How to Test
Start the application using npm start.
Observe the new "Genres" section in the sidebar.
Click on "Fiction"; verify the URL changes to /category/fiction and the books list updates.
Click on "Home"; verify the view resets to the featured books.
Search for a book while in a category to ensure the search resets the category context correctly.